1. Field of the Invention
The present invention relates generally to a method and apparatus for frame synchronization in a positioning or an assisted positioning system and, more specifically, to a Global Navigational Satellite System (GNSS) receiver that uses soft frame synchronization for synchronizing to data or pilot frames in a satellite positioning system.
2. Description of the Related Art
GNSS receivers that are configured to acquire, extract, down-convert and demodulate streamed GNSS navigation signals, which may include information such as almanac/ephemeris parameters, a synchronous code, a time tag, satellite clock corrections, atmospheric models/corrections, and other information that is necessary for position/velocity/time (PVT) determination by the GNSS receiver, are known.
In order to determine the PVT, such GNSS receivers need to acquire and lock onto at least four (4) GNSS navigational signals being streamed from four (4) GNSS satellites. Once the satellites are acquired, the GNSS receiver can download the individual navigational signals, which are modulated with navigational data at various bit rates, e.g., 50 bits/second (i.e. 1 bit/20 msec), 250 bits/second, etc. The navigational data is provided on frames (or on sub-frames).
To demodulate the navigational data carried on the frames, it is necessary to determine a phase of a leading edge of each frame (or sub-frame), that is, to determine the boundary of the frame. Determination of the frame boundary (i.e. the leading edge) is referred to as “frame synchronization,” which is critical in order for the GNSS receiver to effectively set the GNSS receiver time and download and extract the navigational data from the satellite.
Frame synchronization uses the first word of the frame (sometimes referred to as the preamble), which is assigned a specific bit pattern. The bit pattern of the preamble may vary depending on the specific GNSS. For example, the Galileo GNSS uses a navigation message that has a preamble, e.g., sync pattern, including a 10 bit configuration, while the Global Positioning System (GPS) and regional Satellite-Based Augmentation Systems (SBASs), such as the Wide Area Augmentation System (WAAS), European Geostationary Navigation Overlay Service (EGNOS), GPS Aided Geo Augmented Navigation (GAGAN), may use other bit configurations.
Performing frame synchronization using the bits of the preamble is not a perfect science, for various anomalies can occur during the frame synchronization process. For example, because the streamed navigational data on the frames is not always received by the GNSS receiver with continuous complete errorless frames, optimizing the frame synchronization task is complicated by the presence of bit errors, slippage (undetected bit(s)), and random data sequences.
To optimize the frame synchronization task, conventional GNSS receivers may correlate the bit patterns of the preamble with possible hypotheses to determine the frame boundary. Such a correlation computation load or process, however, is quite heavy, and typically requires hardware such as correlators, buffers, processors, etc., which can be quite expensive. Additionally, since the most possible hypotheses are sieved from the correlation results, the sieved hypotheses are usually verified by further signal processing such as Viterbi decoding, Cyclic Redundancy Check (CRC), etc. Such signal processing schemes are very complex and take a long period of time to process.
Accordingly, it is desirable to reduce the computation complexity when carrying out the frame synchronization process. There is a need, therefore, to provide an implementable GNSS receiver system that is operable to rapidly perform accurate frame synchronization.